package com.robotic.route.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.robotic.common.annotation.Excel;
import com.robotic.common.core.domain.BaseEntity;

/**
 * 巡检记录管理对象 inspection_record
 *
 * @author tian
 * @date 2025-09-15
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("inspection_record")
public class InspectionRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 任务名称 */
    @Excel(name = "任务名称")
    private String taskName;

    private String taskType;

    /** 巡检开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "巡检开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /** 巡检结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "巡检结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    private Integer useTime;

    /** 巡检位置数量 */
    @Excel(name = "巡检位置数量")
    private Integer locationCount;

    /** 巡检正常数量 */
    @Excel(name = "巡检正常数量")
    private Integer normalCheckCount;

    /** 巡检报警数量 */
    @Excel(name = "巡检报警数量")
    private Integer alarmCheckCount;

    /** 未巡检数量 */
    @Excel(name = "未巡检数量")
    private Integer missedCheckCount;

    /** 异常行为报警数量 */
    @Excel(name = "异常行为报警数量")
    private Integer abnormalAlarmCount;

    /** 待处理数量 */
    @Excel(name = "待处理数量")
    private Integer pendingProcessCount;

    /** 责任部门 */
    private Long deptId;

    /** 状态 (1:待处理, 2:处理中, 3:已完成) */
    private String status;
    private String routeCode;
    private String routeName;
    private String stopPoint;
    private String region;


}
